const first = () => (new Promise((resolve, reject) => {
    console.log(3);//同
    let p = new Promise((resolve, reject) => {
        console.log(7);//同
        setTimeout(() => {//宏
            console.log(5);//宏 同
            resolve(6)//宏 微 没有执行 状态已经更改为1 不会再更改了
        }, 0)
        resolve(1);//微
    })
    resolve(2);//微
    p.then((arg) => {
        console.log(arg);//微 1
    })
}))
first().then(arg => {
    console.log(arg);;//微 2
})
console.log(4);//同
/*
    3
    7
    4
    1
    2
    5
*/